package main

import (
	"awesomeProject/tools"
	"fmt"
	_ "gorm.io/driver/mysql"
	_ "gorm.io/gorm"
)

// 字段注释说明了gorm库把struct字段转换为表字段名长什么样子。
type Sample struct {
	Id    int64  //表字段名为：id
	Title string //表字段名为：title

	//字段定义后面使用两个反引号``包裹起来的字符串部分叫做标签定义，这个是golang的基础语法，不同的库会定义不同的标签，有不同的含义
	CreateTime int64 `gorm:"column:create_time"` //表字段名为：create_time
}

// 设置表名，可以通过给Food struct类型定义 TableName函数，返回一个字符串作为表名
func (v Sample) TableName() string {
	return "sample"
}

func main() {
	db := tools.GetDB()
	//u := User{}
	//db.Where("username = ?", "tizi365").First(&u)
	Sample := Sample{Id: 1, Title: "张三", CreateTime: 1}

	if db != nil {
		db.Create(&Sample)
		fmt.Println(Sample.Id)
	}
}
